GSI Calcolator Network Traverse
שם עבודה
Ready

Import GSI File - יבא קובץ תצפיות

Leica GSI-8 or GSI-16. Observations named AD are treated as orientation-only (excluded from coordinate output).

📄
Drop GSI File Here - גרור קובץ תצפיות לכאן
or click to browse - לחץ לפתיחת סייר קבצים
.gsi.txt
📋 Paste - הדבק

Control Points — נקודות בקרה

Known coordinates. Stations matched here are "known" — unmatched stations will be calculated from observations.

ℹ️
Format: ID, E, N, Z — any delimiter. Station IDs from GSI matched against these IDs. Unmatched stations are derived via traverse calculation.
📂 Import Control Points File
📍
Drop Control Points File Here - גרור קובץ קואורדינטות לכאן
Format: ID, E, N, Z (CSV, TXT, DAT) - לחץ לפתיחת סייר קבצים
.csv.txt.dat
📌 Known Points0 points
Point ID
Easting (E)
Northing (N)
Elevation (Z)

Observations Editor - עורך תצפיות

Edit, delete, or disable individual observations. AD = orientation only. Link = known→known check shot.

0
Total
0
Sideshots
Link shots
0
AD (orient.)
0
Disabled
📡 Observations
# Station Pt ID Type th [m] Hz [deg] V [deg] SD [m] Code Enabled Actions

Network Plan - תכנית רשת תחנות

Calculation order, station classification, link shots, and orientation corrections per station

🕸️ Calculation Chain
Build network first.
📐 Stations Overview
0 known 0 derived 0 link shots
Station Type Coords from Orient. obs (AD) Hz correction Z Sideshots Link shots

Map View — מפה

Pre-calc: local networks per station. Post-calc: full georeferenced network.

SYSTEM:
DISPLAY:
🟠 Station (known) 🔵 Station (derived) 🟢 Control Point 🟣 Sideshot result 🔴 Link shot
0
Stations
0
Control Points
0
Sideshots
Link shots

Calculate - חישוב

Compute orientations, traverse derived stations, check link shots, apply error dispersion.

📐 Applied Mathematics
ORIENTATION Z per station (from AD observation to known control point) Z = Az_theoretical − Hz_AD where Az_th = atan2(ΔE, ΔN) SIDESHOT COORDINATES D_h = SD · sin(V_zenith) horizontal distance E = E_stn + D_h · sin(Hz_raw + Z) N = N_stn + D_h · cos(Hz_raw + Z) H = H_stn + ih + SD·cos(V_zenith) − th + C&R LINK SHOT CHECK (observation from known station to known station) D_calc = √((E_to−E_from)² + (N_to−N_from)²) inverse distance D_meas = SD · sin(V) σ_allowed = k · √D_meas (proportional tolerance, k configurable) residual = D_calc − D_meas flag if |residual| > σ ERROR DISPERSION (if multiple link shots exist, Bowditch/proportional) ΔE_i = residual_E · (d_i / Σd) correction distributed by distance ΔN_i = residual_N · (d_i / Σd)
⚙️ Measurement ParametersTolerances & limits → Settings tab
🌍 Geodetic Parameters
📋 Computation Plan
Build network plan first.

Results - תוצאות

Calculated coordinates with full audit trail. Link shot residuals shown separately.

0
Points OK
0
Failed
Link shots
0
Link warnings
🔗 Link Shot ChecksAll OK
From To Meas. H-Dist Calc. H-Dist Residual σ allowed Status Dispersion applied
📊 Coordinate Results
# Station Pt ID Easting Northing Elevation H-Dist SD Az (corr.) C&R mm Code Note

Export - ייצוא

Download results in multiple formats

⚠️No results yet. Run the calculation first.

⚙️ הגדרות — Settings

ℹ️All limit parameters, tolerances, and accuracy defaults are managed here. Changes apply immediately on next calculation.
📐 Angle & Orientation Tolerances
📏 Distance & Height Tolerances
⚠️ Info/Warning only — not a blocking error
🎯 Default Measurement Accuracies

GSI Word Index & Unit Field Reference

WI Description Notes
11 Point Number / ID Alphanumeric; "AD" = orientation only
21 Horizontal circle Hz Auto-decoded from unit field (see below)
22 Vertical zenith angle Auto-decoded from unit field
31 Slope distance SD mm resolution (÷1000 → m)
41/87 Target / reflector height mm resolution
42/88 Instrument height mm resolution
51/58 Vertical angle (alt.) Same unit field rules as WI22
71–79 Code / Attribute Free text
81/82/83 ΔE / ΔN / ΔH (instrument-computed) Oriented national-frame diffs, stored by instrument
84/85/86 Station E / N / Z Identifies station setup record (no leading *)
87/88 Target ht / Instr. ht Same as 41/42
📐 Angle Unit Field DecoderAuto-applied per token

The unit field (chars 3–6 of each GSI word) encodes how the angle value is stored. The last character is the key:

UF last char Example token Format Decoding rule
0 22..00+... Gon × 100000 ÷ 100000 → gon
1 22..01+... Gon × 10000 ÷ 10000 → gon
3 22..03+... Decimal degrees × 100000 ÷ 100000 → deg → × 400/360 → gon
4 22.324+0000000007726340 DMS × 10 (most common) DDDMMSS.S×10 → e.g. 7726340 = 77°26′34.0″ = 86.048 gon
⚠️If your results are wrong, the angle unit field is the first thing to check. Unit field '4' (DMS) is the default in many Leica TPS instruments but is often misread as gon, causing ~10–20% error in horizontal distances and large elevation errors.

❓ עזרה ומתמטיקה — Help & Mathematical Reference

🔑 מושגי יסוד — Key Concepts

תצפית AD (Orientation-Only) — כל תצפית שמזהה מטרה בשם "AD" משמשת אך ורק לחישוב תיקון האוריינטציה Z של התחנה. היא אינה מייצרת קואורדינטות.

תחנה מחושבת (Derived Station) — תחנה שאינה קיימת במסד הנקודות הידועות. התוכנה מחשבת קואורדינטות שלה על ידי בחינת תצפיות מתחנה ידועה אליה, ואז משתמשת בה כבסיס לתצפיות שמוצאות ממנה.

Link Shot (ירי בין תחנות ידועות) — תצפית מתחנה ידועה/מחושבת לתחנה ידועה/מחושבת אחרת. משמשת לבקרת איכות: המרחק האופקי הנמדד מושווה למרחק האינברסי בין שתי הנקודות. אם קיימות מספר תצפיות קשר היוצרות לולאה, מיושמת שיטת Bowditch לפיזור שגיאה.

פיזור שגיאה (Error Dispersion) — כאשר מסלול עובר דרך תחנות מחושבות ונסגר על נקודה ידועה, אי-הסגירה מחולקת באופן פרופורציונלי לאורך הרגליים.

הפרש גובה בין נקודות (Reciprocal ΔH) — הפרש הגבהים הנמדד הלוך-חזור בין שתי תחנות. אינו שגיאה כשלעצמו; נחשב כאזהרה בלבד כאשר ‖ΔH_A + ΔH_B‖ גדול משמעותית מהסף הנקבע בהגדרות. ניתן להתעלם ממנו לפי שיקול הדעת.

📐 שלב 1 — אוריינטציה תחנה (Orientation Z)

משתמש בתצפית AD לנקודה ידועה כדי לחשב את הזווית המתקנת Z — כמה הצלחת האופקית של המכשיר סובבת ביחס לצפון הגיאוגרפי של הרשת.

1. חישוב אזימוט תיאורטי לנקודת הבקרה Az_th = atan2(ΔE, ΔN) = atan2(E_target − E_station, N_target − N_station) תוצאה: אזימוט תיאורטי בדרגות, מנורמל [0°, 360°)
2. תיקון Z (Orientation Correction) Z = Az_th − Hz_AD כאשר Hz_AD הוא הקריאה האופקית של תצפית ה-AD (מנורמלת)
3. יישום Z על כל תצפית מהתחנה Az_corrected = Hz_measured + Z (normalized mod 360°)
📡 שלב 2 — חישוב קואורדינטות פולריות (Sideshot)

מחשב E, N, Z של נקודת מטרה מתחנה ידועה לפי מדידות מכשיר.

מרחק אופקי מ-SD וזווית אנכית D_h = SD_corr × sin(V_zenith)
קואורדינטות מישוריות E = E_stn + D_h × sin(Az_corrected) N = N_stn + D_h × cos(Az_corrected)
גובה — כולל ih, th ותיקון C&R ΔV = SD_corr × cos(V_zenith) רכיב גובה על ציר המכשיר C&R = D_h² × (1 − k) / (2R) k=0.13 ברירת מחדל, R=רדיוס כדור הארץ Z_target = Z_stn + ih + ΔV − th + C&R
תיקון SD לאטמוספרה ותיקון פריזמה SD_corr = (SD_raw × (1 + ppm/1e6) + prism_const/1000) × SF_elev כאשר SF_elev = 1 − H_avg/R (רדוקציה לפני הים)
🔗 שלב 3 — בדיקת Link Shots

תצפיות בין תחנות ידועות משמשות לבדיקת איכות. המרחק הנמדד מושווה למרחק האינברסי.

מרחק אינברסי (מחושב מקואורדינטות) D_calc = √((E_to − E_from)² + (N_to − N_from)²)
מרחק נמדד (מ-SD וזווית אנכית) D_meas = SD_corr × sin(V_zenith)
סבילות (proportional to distance) σ_allowed = k × √D_meas [mm] (k מוגדר בהגדרות — ברירת מחדל 15 mm/√m)
שאר (Residual) residual = D_calc − D_meas ⚠️ אזהרה אם |residual| > σ_allowed
🔄 שלב 4 — פיזור שגיאה (Bowditch)

כאשר מסלול נסגר בין שתי נקודות ידועות, אי-הסגירה מחולקת פרופורציונלית לאורך כל רגל.

תיקון לנקודה i בשרשרת ΔE_i = (E_end_known − E_last_derived) × (cumDist_i / totalDist) ΔN_i = (N_end_known − N_last_derived) × (cumDist_i / totalDist) ΔZ_i = (Z_end_known − Z_last_derived) × (cumDist_i / totalDist)
cumDist_i = מרחק מצטבר מתחילת השרשרת עד לנקודה i totalDist = סך אורך השרשרת
⚠️ הפרש גובה הדדי (Reciprocal ΔH) — הבהרה

בעת מדידה הדדית בין תחנות A ו-B מייצרים שני ΔH:

מ-A לB ΔH_A = SD_A × cos(Vz_A) + ih_A − th_B + C&R_A מ-B לA ΔH_B = SD_B × cos(Vz_B) + ih_B − th_A + C&R_B
סכום הדדי אמור להיות ≈ 0 בעבודה נקייה ΔH_A + ΔH_B ≈ 0
מצב נורמלי: ΔH_A ≠ ΔH_B הפרש הגבהים הפשוט אינו שגיאה — כל מדידה נעשית מגובה th שונה. אזהרה כאשר: |ΔH_A + ΔH_B| > tolRecipZ כלומר כאשר הסכום הכולל חורג מהסבילות — יתכן שגיאת th, ih, או שגיאת גובה.

⚠️ זוהי אזהרה בלבד — לא שגיאה חוסמת. ניתן לבחור להתעלם בכל מקרה בנפרד.